Enviado em 12/03/2012 - 18:57h
Boa noite gente,
<?php
if ($argc != 3) {
print "USO: php tratamento_final.php <arquivo de log insercao> <relatorio dos nao inseridos> \n\n";
exit(0);
}
ini_set("auto_detect_line_endings", true);
$log = fopen($argv[1], "r") or die($argv[1]." está inacessivel.");
$relatorio = file_get_contents($argv[2]) or die($argv[2]." está inacessivel.");
if ($log && $relatorio) {
while (!feof($log)) {
$linha = fgets($log, 4096);
//busca por erro de parametro
$busca = strpos($linha, "ERROR");
if ($busca) {
$erro = str_replace("\r\n",";",trim(strstr($linha, "Erro nos parametros")));
$dslam = substr(strstr($linhaAnterior, "DSLAM: "), 7, 15);
$porta = substr(strstr($linhaAnterior, "Porta: "), 7, 11);
$relatorio = str_replace($dslam.";".$porta.";1;1;;", $dslam.";".$porta.";1;1;;".$erro, $relatorio);
file_put_contents($argv[2], $relatorio);
}
//busca por erro de TransactionException
$busca = strpos($linha, "TransactionException");
if ($busca) {
$codErro = "-4";
$erro = str_replace("\r\n",";",trim(strstr($linha, "Erro WDT:")));
$dslam = substr(strstr($linhaAnterior, "DSLAM: "), 7, 15);
$porta = substr(strstr($linhaAnterior, "Porta: "), 7, 11);
$relatorio = str_replace($dslam.";".$porta.";1;1;;", $dslam.";".$porta.";1;1;".$codErro.";".$erro, $relatorio);
file_put_contents($argv[2], $relatorio);
}
//busca por erro 301
$busca = strpos($linha, "Falha ao consultar DSLAM");
if ($busca) {
$codErro = "-4";
$erro = str_replace("\r\n",";",trim(strstr($linha, "Erro WDT:")));
$dslam = substr(strstr($linhaAnterior, "DSLAM: "), 7, 15);
$porta = substr(strstr($linhaAnterior, "Porta: "), 7, 11);
$relatorio = str_replace($dslam.";".$porta.";1;1;;", $dslam.";".$porta.";1;1;".$codErro.";".$erro, $relatorio);
file_put_contents($argv[2], $relatorio);
}
$linhaAnterior = $linha;
}
}
?>
Servidor de Backup com Ubuntu Server 24.04 LTS, RAID e Duplicati (Dell PowerEdge T420)
Visualizar câmeras IP ONVIF no Linux sem necessidade de instalar aplicativos
Atualizar Debian Online de uma Versão para outra
Proteja seu Linux Mint com o Timeshift: Restaure o sistema mesmo que ele não inicie!
Instalando Google Chrome no Debian 13
Alguém pode me recomendar um editor de textos? (0)
meus dois pen drives não são mais reconhecidos pelo meu PC apos tentar... (1)